package com.aliyun.messagemgt.dto;


import lombok.Data;

import java.util.List;

/**
 * 审计接口的信息
 *
 * @Author lby
 * @Date: 2019-12-24
 */
@Data
public class LogAudit {

    /**
     * 系统唯一编号
     */
    private String sysId = "b05701d48cd9724cbfb601417f862866";

    /**
     * 日志类型
     */
    private String logType = "010";

    /**
     * 日志内容
     */
    private List<String> logContents;

    /**
     * 校验码
     */
    private String checkSum;

    @Data
    public static class LogContents {
    	
		/*private String logId; // 日志标识
		private String applyApproveIdHash; // 提请审批人员
		private String businessTypeHash; // 审批类型
		private String businessContentHash; // 线索
		private String approveContentHash; // 审批关键信息
		private String approveTableHash; // 审批内容
		private String approveResult; // 最终审批结果
		private String approveTime; // 最终审批时间
		private String approveInforceTime; // 审批生效时间
		private String applySystemId; // 业务应用平台标识
		private String approveCenterId; // 审批中心标识
		private String hitWhiteList;// 是否命中白名单
		private String extend; // 是否继承父审批结果
		private String relatedId; // 父审批流程ID
        private Integer needApprove;//是否需要审批字段-needApprove：该字段表示操作是否需要审批
        private String taskName;//审批任务名称-taskName：标识某一个审批单的名称*/
        private Integer needApprove = 0;//是否需要审批字段-needApprove：该字段表示操作是否需要审批0	否 1	是
        /**
         * 请求的标识
         */
        private String businessId;

        /**
         * 请求的时间
         */
        private String businessTime;
        /**
         * 请求的服务地址（非必填）
         */
        private String serviceAddress;
        /**
         * 请求的数据/手段系统唯一标识（来源于统一资源服务目录）
         */
        private String dataId  = "hzga-00025";;
        /**
         * 操作人员ID，32位字符串（对应浙江文档的User_ID字段）
         */
        private String userId;
        /**
         * （非必填）
         * 用户类型，区分普通用户类型和高级权限的特殊用户类型，应用直接报送中文描述的用户角色信息
         */
        private String userRole;

        /**
         * 采用GA/T 543 DE00002 姓名（可从警员PKI证书认证反馈信息中获取）。
         */
        private String userName;
        /**
         * 用户所属单位的公安机关机构名称，采用GA/T 543 DE00065 单位名称（可从警员PKI证书认证反馈信息中获取）
         */
        private String organization;
        /**
         * 用户所属单位的公安机关机构代码，采用GA/T 543 DE00060 公安机关机构代码（可从警员PKI证书认证反馈信息中获取）。
         */
        private String organizationId;
        /**
         * 终端类型0	PC
         * 1	移动终端
         */
        private String terminalType ="0";
        /**
         * 用户操作时所使用的信息处理终端的唯一标识；对于直接接入公安网使用的信息处理终端
         * ，填写其网络IP地址，如：10.2.64.71；移
         * 动警务终端通过网络安全边界接入设备接入公安网的，填写该终端的硬件序列号
         */
        private String terminalId;
        /**
         * 终端ip
         */
        private String terminalIp;
        /**
         * 用户具体操作类型代表，0：登录；1：查询；2：新增；3：修改；4：删除
         */
        private Integer operateType;
        /**
         * 用户操作的结果，包括成功/失败。1:成功；0：失败
         */
        private String operateResult;
        /**
         * （非必填）
         * 当操作结果为失败时，可记录操作失败的原因代码
         */
        private String errorCode;
        /**
         * 操作类型为0-登录时，置空；为其它类型时，可填写当时用户所操作的具体功能模块名称
         */
        private String operateName;
        /**
         * 被操作对象
         */
        private String operateObject;
        /**
         * 操作类型为0-登录时，置空；
         * 为其它类型时，可记录用户进行操作时的数据筛选条件。
         * 操作条件需明确操作对象描述，如身份证号码、姓名、车牌、电话号码、案件编号、项目名称等。
         * 可填写数据操作SQL语句的where子句内容，如：name=‘张三’，
         * 需要避免记录通用类无意义的描述语句，如“class=1”、“ture=1”等。
         * 操作语句语法格式参考标准SQL语句格式，即：条件类型=’****’
         */
        private String operateCondition;
        /**
         * 操作条件描述
         */
        private String operateConditionDesc;
        /**
         *（非必填）
         */
        private String  operateSQL;
        /**（非必填）
         * 用户类型，区分普通用户类型和高级权限的特殊用户类型
         * 备用字段1和备用字段3，作为以后备用字段，不再表示用户类型和查询SQL
         */
        private String bz1;
        /**（非必填）
         * 登陆描述
         */
        private String bz2;
        /**（非必填）
         * 查询SQL
         * 备用字段1和备用字段3，作为以后备用字段，不再表示用户类型和查询SQL
         */
        private String bz3;
        private String bz4;
        private String bz5;
        private String bz6;
        private String bz7;
        private String bz8;
        private String bz9;
        private String bz10;
    }


}
